Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- output buffer



  Audio API in Android development

Mobile devices of the first generation were not capable of playing any sounds except monophonic ringtones. Today any smartphone platform supports playback, record and to some extent manipulation of digital sound, often up to CD quality.Android is no exception to that. Even older 1.5 devices can do a lot of things with digital audio. However, due to lack of guidance, a developer who is doing his first audio feature might miss some of the available API facilities, or might choose the approach that...

   Audio,Android,MediaPlayer,AudioTrack,Sou     2011-04-21 11:32:32

  A guide on installing and setting up GitLab server on Ubuntu

GitHub, GitLab and BitBucket are the three most famous code hosting platform in the world. They have different features which allow teams or individuals to share code with others remotely. In case you want to build your own code hosting server so that you can host and share the code by yourself, you can install and set up your own server. In this post, we will walk you through a guide on installing and setting up GitLab server on Linux environment. gitlab is a web based code hosting tool which i...

   UBUNTU,TUTORIAL,GITLAB     2020-04-25 07:05:33

  Different types of keystore in Java -- Windows-MY

Windows-MY is a type of keystore on Windows which is managed by the Windows operating system. It stores the user keys and certificates which can be used to perform cryptographic operations such as signature verification, data encryption etc. Since it's a kind of native keystore, Java doesn't have a general API to access it. To help Java applications access the keys and certificates stored in Windows-MY keystore, Java provides a separate API -- SunMSCAPI. The SunMSCAPI provider is ...

   JAVA,KEYSTORE,WINDOWS-MY,SUNMSCAPI     2016-01-09 05:45:59

  Using msmtp to replace sendmail

sendmail is a mail client in Linux with many vulnerabilities and tedius configuration steps, many system administrators have disabled using it. Then how do we know what happens if a crontab script executes with error? Actually there are some replacements for sendmail, one is ssmtp, but this application is no longer maintained, we even cannot find its source code on Google. Fortunately, we can use msmtp to replace sendmail. The address : http://msmtp.sourceforge.net/ 1. Installation After downloa...

   sendmail, msmtp, replacement     2012-09-27 11:41:48

  Stream API in Java 8

Overview In this lesson on Stream API in Java, we will study how we can put Streams to use to write efficient and much more maintainable code. We will also write code with and without Streams so that we are able to compare the two versions. Before doing all this, we must know how to create a Stream and process it and that is what we will get started with. Introduction to Streams We will be starting with creating Streams. Let us get started with the Stream<T> API which enables us to play w...

   STREAM API,JAVA 8,DEVELOPMENT,TEAM     2018-01-30 00:14:46

  Vim: revisited

I’ve had an off/on relationship with Vim for the past many years. Before, I never felt like we understood each other properly. Vim is almost useless without plugins and some essential settings in .vimrc, but fiddling with all the knobs and installing all the plugins that I thought I needed was a process that in the end stretched out from few hours to weeks, months even; and it the end it just caused frustration instead of making me a happier coder. Recently, I decided to give Vim ano...

   Linux,Editor,Vim,Setup,Quick guideline     2011-12-12 07:55:27

  Python threads: communication and stopping

A very common doubt developers new to Python have is how to use its threads correctly. Specifically, a large amount of questions on StackOverflow show that people struggle most with two aspects: How to stop / kill a threadHow to safely pass data to a thread and back I already have a blog post touching on these issues right here, but I feel it’s too task-specific for sockets, and a more basic and general post would be appropriate. I assume the reader has a basic familiarity with Pytho...

   Python,Multithreading,Communication,Synchronize     2011-12-28 07:38:32

  10 notorious computer virus

The history of computer virus is the same as computer history. With more and more powerful computers, virus also are smarter and harder to be detected and killed. They have big impact on data security and system usability. We introduce 10 notorious computer virus in the history. 1. Creeper In 1971, the Creeper virus, an experimental self-replicating program, is written by Bob Thomas at BBN Technologies. Creeper infected DEC PDP-10 computers running the TENEX operating sy...

   Computer virus,History,Security     2013-07-16 21:09:22

  Use Delve to debug GoLang program

If you don't know how to debug program, you are not a real programmer. gdb can be used to debug go program, but according to golang website, delve is a better option.   Note that Delve is a better alternative to GDB when debugging Go programs built with the standard toolchain. It understands the Go runtime, data structures, and expressions better than GDB. Below is a simple go program. package main type Person struct { Name string Age int } func main() { var me Person me.Nam...

   GOLANG,DEBUG,DELVE     2018-11-09 23:28:43

  Fix 'this authentication plugin is not supported' issue while using Go to connect MySQL 8

MySQL 8 has changed its default authentication plugin from mysql_native_password to caching_sha2_password to improve its security. However many third party libraries seem act slowly to catch up with this change. This causes some compatible issues with their connection to MySQL. One of the issues is seen in Go libraries while it's trying to connect to MySQL 8. The specific error has been observed is "this authentication plugin is not supported". The root cause of this issue is that the go-sq...

   MYSQL,GO,MYSQL 8,AUTHENTICATION PLUGIN     2018-07-11 08:55:02